var jsonUtil = {
    /**
     * 合并json
     * @param jsonObj1
     * @param jsonObj2
     * @returns {{}}
     */
    mergeJsonObj: function (jsonObj1, jsonObj2) {
        var jsonResult = {};
        for (var item in jsonObj1) {
            jsonResult[item] = jsonObj1[item];
        }
        for (var item in jsonObj2) {
            jsonResult[item] = jsonObj2[item];
        }
        return jsonResult;
    },
    parseStr: function (el) {
        return JSON.stringify(el);
    },
    parseJson: function (str) {
        return JSON.parse(str);
    },
    getValue: function (vueObj) {
        return JSON.parse(JSON.stringify(vueObj));
    },
    serialize: function (jsonObject) {
        let result = "";
        for (const key in jsonObject) {
            result += !jsonObject[key] ? "" : key + "=" + jsonObject[key] + "&";
        }
        return result.substring(0, result.length - 1);
    }

};

Date.prototype.format = function (format) {
    var o = {
        "M+": this.getMonth() + 1, //month
        "d+": this.getDate(),    //day
        "h+": this.getHours(),   //hour
        "m+": this.getMinutes(), //minute
        "s+": this.getSeconds(), //second
        "q+": Math.floor((this.getMonth() + 3) / 3),  //quarter
        "S": this.getMilliseconds() //millisecond
    };
    if (/(y+)/.test(format)) format = format.replace(RegExp.$1,
        (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o) if (new RegExp("(" + k + ")").test(format))
        format = format.replace(RegExp.$1,
            RegExp.$1.length == 1 ? o[k] :
                ("00" + o[k]).substr(("" + o[k]).length));
    return format;
};